Live Updates

Abstract

Capable 21C uses a complex algorithm to update all computers in a networked environment. This article describes that process. Note that some of the terminology and explanations in this article are more advanced and require a basic understanding of files, file date stamps, copying files, file versions and the windows registry.

Underlying challenge

Capable 21C was designed to be both forwards and backwards compatible. This means that a single network environment should be able to handle having multiple versions of Capable 21C running simultaneously. However, this is not ideal, as it may cause confusion in an office environment when staff use different machines, and experience different screens and functionality. For this reason, Capable 21C includes special features to ensure that when a Live Update occurs, every machine in the same network can update to the latest version.

Resolution

Capable 21C has embedded within the program file the version of that program file. When a Live Update is performed, that program file is replaced with a more recent version (having a higher version number).

When any version of the Capable 21C program is started, the first thing that it does is check its own version number, and make a note of it in the database that all computers in the network share. If its own version is older than the latest version stamped in the database, it is immediately aware that there is a newer version of Capable 21C somewhere in the network. If its own version is newer than the latest version stamped in the database, it is immediately aware that it is the newest version in the network.

If the version of Capable 21C is newer or older than the latest version in the network, it performs certain steps to ensure that all machines in the network will update themselves to the latest version (see below).

Detailed Information

If the version of Capable 21C is the newest in the network:

  • Capable 21C stamps its own version into the database so that other machines will become aware of the presence of a newer version.
  • It copies the program file to the same folder that the database is located in, and renames it to Capable.TMP.
  • Capable 21C opens the latest Readme.rtf file in Microsoft Word so that the operator can peruse the latest changes.

If the version of Capable 21C is older than the newest version in the network:

  • Capable 21C copies the newest version (Capable.TMP in the same folder as the database) into the root directory of the C: drive of the local machine. It renames the file to Capable.EXE.
  • If the program file CapNetUpdate.EXE is available on the machine (on later versions of Capable only), Capable will prompt the user if they would like to update immediately.
  • If the user says ‘Yes’, Capable will initiate the CapNetUpdate program and close immediately.
  • The CapNetUpdate program will copy the newer Capable.EXE from the root directory into the normal C:\Program Files\Capable folder (or wherever Capable is installed on the local machine). After the copy, the CapNetUpdate program will restart Capable 21C.
  • If the user says ‘No’ to an immediate update, or if CapNetUpdate is unavailable, Capable will make an entry into the Windows Registry in the RunOnce key to execute an XCopy command to copy the C:\Capable.EXE file into the C:\Program Files\Capable folder (or wherever Capable 21C is installed). This RunOnce key will execute the next time the computer is restarted.

Note that this cross-Live-Update algorithm will have the following effects:

  • When a machine is LiveUpdated, there will be short pause while Capable 21C copies the latest version of the program to the database folder.
  • Microsoft Word will start on the machine that is LiveUpdated to show the ReadMe file. This will not happen on other computers in the same network.
  • Other machines in the network will report that they have detected a newer version the next time Capable 21C is started. This may occur on the next day.
  • Those other machines may update their version of Capable 21C immediately (if CapNetUpdate.EXE is available), or they may update upon the next reboot (which could be a day later).
  • The net effect of items 3 and 4 are that other machines in the network may not be updated to the latest version of Capable 21C for a period up to 48 hours (assuming that computers are rebooted once per day).
This knowledge resource is designed for use on a Windows (tm) XP system operating at a screen resolution of 1024x768 or better. Windows Media Player must be installed for this training resource to operate correctly.

Copyright 2008 Capable Software Pty Ltd

Training Sessions

Fundamentals Training Modules

Intermediate Training Modules

Advanced Training Modules

Other Resources

Return to Capable Software home

Contact Technical Support